@import 'reset.css';

:root {
  /* 旅游主题配色变量 */
  --brand-primary: #34b3e3; /* 海蓝 */
  --brand-secondary: #42b883; /* 热带绿 */
  --bg-0: #f6fbff; /* 全局主背景 */
  --bg-1: #ffffff; /* 卡片背景 */
  --border: #e6eef5; /* 边框色 */
  --text: #1f2937; /* 主文字 */
  --muted: #6b7280; /* 次级文字 */
  --shadow: 0 10px 30px rgba(16, 24, 40, 0.06);

  /* Element Plus 主题变量 */
  --el-color-primary: var(--brand-primary);
  --el-color-success: var(--brand-secondary);
  --el-border-color: var(--border);
}

html,
body,
#app {
  min-height: 100%;
}

body {
  font-family:
    system-ui,
    -apple-system,
    Segoe UI,
    Roboto,
    Helvetica,
    Arial,
    'PingFang SC',
    'Hiragino Sans GB',
    'Microsoft YaHei',
    'Noto Sans CJK SC',
    'Source Han Sans SC',
    sans-serif;
  color: var(--text);
  background:
    radial-gradient(900px 420px at 85% -10%, rgba(52, 179, 227, 0.08), transparent 60%),
    radial-gradient(760px 360px at -10% 30%, rgba(66, 184, 131, 0.08), transparent 60%), var(--bg-0);
  background-attachment: fixed;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
}

/* 按钮：主按钮用渐变更具“旅行活力”感 */
.el-button--primary {
  background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary));
  border-color: transparent;
}
.el-button--primary:focus,
.el-button--primary:hover {
  filter: brightness(1.02);
}
.el-button--primary.is-plain {
  color: var(--brand-primary);
  background: rgba(52, 179, 227, 0.12);
  border-color: rgba(52, 179, 227, 0.35);
}

/* 成功按钮采用绿蓝渐变，契合旅游主题 */
.el-button--success {
  background: linear-gradient(135deg, var(--brand-secondary), var(--brand-primary));
  border-color: transparent;
}
.el-button--success:focus,
.el-button--success:hover {
  filter: brightness(1.03);
}
.el-button--success.is-plain {
  color: var(--brand-secondary);
  background: rgba(66, 184, 131, 0.12);
  border-color: rgba(66, 184, 131, 0.35);
}

/* 分页：选中态更清晰 */
.el-pagination.is-background .el-pager li.is-active {
  background-color: var(--brand-primary);
  color: #fff;
}
.el-pagination.is-background .el-pager li:hover {
  color: var(--brand-primary);
}

/* 卡片/容器通用样式（可选复用） */
.theme-card {
  background: var(--bg-1);
  border: 1px solid var(--border);
  border-radius: 14px;
  box-shadow: var(--shadow);
}

/* 栅格系统（保留原有） */
.el-container.row > .el-aside {
  width: auto;
  min-width: 0; /* 避免内容导致不收缩 */
}
.row {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.row > * {
  grid-area: auto/auto/auto/span 12;
}
.row .col-1 {
  grid-area: auto/auto/auto/span 1;
}
.row .col-2 {
  grid-area: auto/auto/auto/span 2;
}
.row .col-3 {
  grid-area: auto/auto/auto/span 3;
}
.row .col-4 {
  grid-area: auto/auto/auto/span 4;
}
.row .col-5 {
  grid-area: auto/auto/auto/span 5;
}
.row .col-6 {
  grid-area: auto/auto/auto/span 6;
}
.row .col-7 {
  grid-area: auto/auto/auto/span 7;
}
.row .col-8 {
  grid-area: auto/auto/auto/span 8;
}
.row .col-9 {
  grid-area: auto/auto/auto/span 9;
}
.row .col-10 {
  grid-area: auto/auto/auto/span 10;
}
.row .col-11 {
  grid-area: auto/auto/auto/span 11;
}
.row .col-12 {
  grid-area: auto/auto/auto/span 12;
}
@media (min-width: 576px) {
  .row .col-sm-1 {
    grid-area: auto/auto/auto/span 1;
  }
  .row .col-sm-2 {
    grid-area: auto/auto/auto/span 2;
  }
  .row .col-sm-3 {
    grid-area: auto/auto/auto/span 3;
  }
  .row .col-sm-4 {
    grid-area: auto/auto/auto/span 4;
  }
  .row .col-sm-5 {
    grid-area: auto/auto/auto/span 5;
  }
  .row .col-sm-6 {
    grid-area: auto/auto/auto/span 6;
  }
  .row .col-sm-7 {
    grid-area: auto/auto/auto/span 7;
  }
  .row .col-sm-8 {
    grid-area: auto/auto/auto/span 8;
  }
  .row .col-sm-9 {
    grid-area: auto/auto/auto/span 9;
  }
  .row .col-sm-10 {
    grid-area: auto/auto/auto/span 10;
  }
  .row .col-sm-11 {
    grid-area: auto/auto/auto/span 11;
  }
  .row .col-sm-12 {
    grid-area: auto/auto/auto/span 12;
  }
}
@media (min-width: 768px) {
  .row .col-md-1 {
    grid-area: auto/auto/auto/span 1;
  }
  .row .col-md-2 {
    grid-area: auto/auto/auto/span 2;
  }
  .row .col-md-3 {
    grid-area: auto/auto/auto/span 3;
  }
  .row .col-md-4 {
    grid-area: auto/auto/auto/span 4;
  }
  .row .col-md-5 {
    grid-area: auto/auto/auto/span 5;
  }
  .row .col-md-6 {
    grid-area: auto/auto/auto/span 6;
  }
  .row .col-md-7 {
    grid-area: auto/auto/auto/span 7;
  }
  .row .col-md-8 {
    grid-area: auto/auto/auto/span 8;
  }
  .row .col-md-9 {
    grid-area: auto/auto/auto/span 9;
  }
  .row .col-md-10 {
    grid-area: auto/auto/auto/span 10;
  }
  .row .col-md-11 {
    grid-area: auto/auto/auto/span 11;
  }
  .row .col-md-12 {
    grid-area: auto/auto/auto/span 12;
  }
}
@media (min-width: 920px) {
  .row .col-lg-1 {
    grid-area: auto/auto/auto/span 1;
  }
  .row .col-lg-2 {
    grid-area: auto/auto/auto/span 2;
  }
  .row .col-lg-3 {
    grid-area: auto/auto/auto/span 3;
  }
  .row .col-lg-4 {
    grid-area: auto/auto/auto/span 4;
  }
  .row .col-lg-5 {
    grid-area: auto/auto/auto/span 5;
  }
  .row .col-lg-6 {
    grid-area: auto/auto/auto/span 6;
  }
  .row .col-lg-7 {
    grid-area: auto/auto/auto/span 7;
  }
  .row .col-lg-8 {
    grid-area: auto/auto/auto/span 8;
  }
  .row .col-lg-9 {
    grid-area: auto/auto/auto/span 9;
  }
  .row .col-lg-10 {
    grid-area: auto/auto/auto/span 10;
  }
  .row .col-lg-11 {
    grid-area: auto/auto/auto/span 11;
  }
  .row .col-lg-12 {
    grid-area: auto/auto/auto/span 12;
  }
}
@media (min-width: 1200px) {
  .row .col-xl-1 {
    grid-area: auto/auto/auto/span 1;
  }
  .row .col-xl-2 {
    grid-area: auto/auto/auto/span 2;
  }
  .row .col-xl-3 {
    grid-area: auto/auto/auto/span 3;
  }
  .row .col-xl-4 {
    grid-area: auto/auto/auto/span 4;
  }
  .row .col-xl-5 {
    grid-area: auto/auto/auto/span 5;
  }
  .row .col-xl-6 {
    grid-area: auto/auto/auto/span 6;
  }
  .row .col-xl-7 {
    grid-area: auto/auto/auto/span 7;
  }
  .row .col-xl-8 {
    grid-area: auto/auto/auto/span 8;
  }
  .row .col-xl-9 {
    grid-area: auto/auto/auto/span 9;
  }
  .row .col-xl-10 {
    grid-area: auto/auto/auto/span 10;
  }
  .row .col-xl-11 {
    grid-area: auto/auto/auto/span 11;
  }
  .row .col-xl-12 {
    grid-area: auto/auto/auto/span 12;
  }
}
@media (min-width: 1400px) {
  .row .col-xxl-1 {
    grid-area: auto/auto/auto/span 1;
  }
  .row .col-xxl-2 {
    grid-area: auto/auto/auto/span 2;
  }
  .row .col-xxl-3 {
    grid-area: auto/auto/auto/span 3;
  }
  .row .col-xxl-4 {
    grid-area: auto/auto/auto/span 4;
  }
  .row .col-xxl-5 {
    grid-area: auto/auto/auto/span 5;
  }
  .row .col-xxl-6 {
    grid-area: auto/auto/auto/span 6;
  }
  .row .col-xxl-7 {
    grid-area: auto/auto/auto/span 7;
  }
  .row .col-xxl-8 {
    grid-area: auto/auto/auto/span 8;
  }
  .row .col-xxl-9 {
    grid-area: auto/auto/auto/span 9;
  }
  .row .col-xxl-10 {
    grid-area: auto/auto/auto/span 10;
  }
  .row .col-xxl-11 {
    grid-area: auto/auto/auto/span 11;
  }
  .row .col-xxl-12 {
    grid-area: auto/auto/auto/span 12;
  }
}

/* 强制让带 row 类的 el-container 使用 grid，覆盖默认 flex */
.el-container.row {
  display: grid;
}
